Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GUI-Instagram-Downloader #25

Open
wants to merge 8 commits into
base: main
Choose a base branch
from
Open

Conversation

Abubakrce19
Copy link

@Abubakrce19 Abubakrce19 commented Oct 29, 2022

Closes issue
#18

GUI-Insta-Downloader

Graphical User Interface Instagram Downloader

Introduction

As Instagram does not provide any download option for thier posts(reels/profile picture/images), here is a Gui based Instagram downloader.

Requirements

Features

  • Download Profile Picture
  • Download Posts Using Link
  • Ability to Specify where to Save Images and Videos
  • Simple and beautiful User interface

How to Install

  • clone this repositry
  • pip install pillow
  • pip install instaloader
  • pip install tk
  • python3 main.py

Introduction

As Instagram does not provide any download option for thier posts(reels/profile picture/images), here is a Gui based Instagram downloader.

Please consult Project tutorial for more detail.

  • My project tutorial topic has already been aproved by the Codédex team
  • My project tutorial file renders properly in mdx
  • The content written is my own, and not plagiarized from other sources
  • All code written is commented or documented thoroughly
  • I have already completed a self-review of the project tutorial
  • I will comply with changes from the Codédex team about my project tutorial

@Abubakrce19
Copy link
Author

@Bobliuuu
Please have a look now.
Thank you

Copy link
Contributor

@Bobliuuu Bobliuuu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @Abubakrce19, thank you for your PR. The code looks great 🎉

However, since our project tutorial is for the Codédex site, you shouldn't link to another site, and instead just put the explanation in the mdx file.

Looking at your Medium article though, it seems like you are showing people how to use your code. The project tutorial should explain the code, not just how to use it. You should explain each part of your code and what it does.

Please let me know if you have any questions!

@Bobliuuu
Copy link
Contributor

Bobliuuu commented Oct 29, 2022

Here is a reference tutorial: https://www.codedex.io/projects/generate-a-qr-code-with-python

In this tutorial, the lines of code are explained, not just how to use the code.

@Abubakrce19
Copy link
Author

Here is a reference tutorial: https://www.codedex.io/projects/generate-a-qr-code-with-python

In this tutorial, the lines of code are explained, not just how to use the code.

Sorry for that I will remove the link.

Plus I have explained each line of code using comments in code.Is'nt it enough? Or still It is better to explain code separately?

Thank you!!

@Abubakrce19
Copy link
Author

@Bobliuuu
Changes done.
Tutorial deleted.
Code explanation added

Copy link
Contributor

@Bobliuuu Bobliuuu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @Abubakrce19, nice work! However, there are still some issues:

  • In your code, please keep formatting consistent. This means spaces before commas but not after, either spaces or no spaces after equal signs (but not both), and no spaces before :
  • Your code needs to be explained a lot more. Since this is a project tutorial, you should go into your code in depth: you need to explain more about what each block of code does, and how it fits into the entire flow of your code
  • For example, I would talk about what each module does, and what an InstaLoader() does, what Threading is, etc.
  • The tutorial should be written in a way that anyone with basic Python knowledge can understand the code
  • Please refer to @asiqurrahman's project tutorial, where he goes into depth about each code block and what it does: https://www.codedex.io/projects/generate-a-blog-with-openai
  • Please elaborate on your introduction and add a conclusion, and review your tutorial so there are no typos (e.g. ## Explanation, not ## Explaination)

@Abubakrce19
Copy link
Author

Thank you for your valuable suggestions.

@Bobliuuu
Copy link
Contributor

No problem! When you are done, please re-request my review.

@Abubakrce19
Copy link
Author

@Bobliuuu

</p>

## Explanation
<p> Import the required Libraries and Modules </P>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please explain each library and module (and lowercase "libraries" and "modules")

import os
```

<p>function for downloading User profile picture </p>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Explain what filedialog.askdirectory() is, and what the Instaloader() code does in more detail

threading.Thread(target = download_image).start()
```

<p> Function for downloading image by URL</P>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here, talk about logging into Instagram and how that works with the instaloader

try :
L.login(Username,Password)
except :
messagebox.showerror('ERROR','Username or Password is Wrong')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make this a separate code block and explanation of messagebox

```


<p> To create a tkinter GUI frame</p>
Copy link
Contributor

@Bobliuuu Bobliuuu Dec 6, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Expand about Tinkter here. What exactly does it do? Why do we need it in this project?

messagebox.showerror('Error','You have to enter your Username and Password')
```

The new_window function
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need the new_window function? How does it fit into the project flow?

@Bobliuuu
Copy link
Contributor

Bobliuuu commented Dec 6, 2022

@Abubakrce19 Great work! Please review the comments I made, and make the changes.
Some general comments:

  • Please run your project tutorial explanations through a grammar checker to make sure there are no grammar errors
  • Expand upon your explanations a bit more. Users will often ask why, and your project tutorial should answer those questions by expanding on your explanations of your code.

@Abubakrce19
Copy link
Author

Sure
1)I am reviewing the comments.
2)I will surely check the explanation on Grammarly( that's a good idea actually ty)
3)I will try to add more detail to the explanation.
Thank you

@sonnynomnom
Copy link
Member

Hi @Abubakrce19, great job on the progress so far! Love the project idea.

After chatting with the team, I think we can merge this in and workshop it a bit more internally. What do you think?

Also can you give me your name and email so I can send you a Discord invite? Thanks! 🙏

@Abubakrce19
Copy link
Author

Sure go ahead @sonnynomnom .
Email: [email protected]
Name: Muhammahd Abubakar
Your welcome ❤️

@Abubakrce19
Copy link
Author

Plus I have finals nearby, I will try to add more details after final.
Thanks

@Abubakrce19
Copy link
Author

@sonnynomnom
Any update?
thanks

@Abubakrce19
Copy link
Author

@Bobliuuu

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants